import unittest,os
from case.unittest_test.unit_test1 import UnitTest
from case.unittest_test.unitsuite.HTMLTestRunner import HTMLTestRunner
#创建测试套件
suite = unittest.TestSuite()
#添加测试用例 第一种方法
#suite.addTest(UnitTest("test_2"))
#suite.addTest(UnitTest("test_3"))
#suite.addTest(UnitTest("test_4"))

#第二种方法
cases =[UnitTest("test_2"),UnitTest("test_3"),UnitTest("test_4")]
#suite.addTests(cases)

#添加测试用例第三种方法 批量执行
#test_dir= './'
#suite = unittest_test.defaultTestLoader.discover(start_dir=test_dir,pattern="unit_test*.py")

#添加测试用例 第四种方法 通过类名
#suite.addTests(unittest_test.TestLoader().loadTestsFromTestCase(UnitTest))

#添加测试用例 第五种方法 通过名称
#suite.addTests(unittest_test.TestLoader().loadTestsFromName("unit_test1.UnitTest"))


#基于Runner来运行测试套件
#runner =unittest_test.TextTestRunner()
#runner.run(suite)

#集成测试报告
report_name = '测试报告名称'
report_title ="测试报告标题"
report_desc="测试报告描述"
report_path = 'report/'
report_file = report_path + 'report.html'
#判断文件夹是否存在
if not os.path.exists(report_path):
    os.mkdir(report_path)
else:
    pass

#HTMLTestRunner使用
with open(report_file,"wb") as report:
    suite.addTests(cases)
    runner = HTMLTestRunner(stream=report,title=report_title,description="report_desc")
    runner.run(suite)





